plugins:
  utilities:
  - name: sqlfluff
    variant: sqlfluff
    pip_url: sqlfluff==1.2.1; sqlfluff-templater-dbt==1.2.1; dbt-core~=1.2.0;
      dbt-snowflake~=1.2.0
    settings:
    - name: user
      env: DBT_SNOWFLAKE_USER
    - name: role
      env: DBT_SNOWFLAKE_ROLE
    - name: database
      env: DBT_SNOWFLAKE_DATABASE
      value: foo
    - name: database_prep
      env: DBT_SNOWFLAKE_DATABASE_PREP
      value: foo
    - name: database_raw
      env: DBT_SNOWFLAKE_DATABASE_RAW
      value: foo
    - name: account
      env: DBT_SNOWFLAKE_ACCOUNT
    - name: warehouse
      env: DBT_SNOWFLAKE_WAREHOUSE
    config:
      account: epa06486
      role: TRANSFORMER
      warehouse: CORE
  - name: awscli
    namespace: awscli
    pip_url: awscli==1.21.7
    executable: aws
    commands:
      s3_copy_metrics: s3 cp variant_metrics.yml ${HUB_METRICS_S3_PATH}
      s3_copy_metrics_legacy: s3 cp metrics.yml ${HUB_METRICS_S3_PATH}
      s3_copy_audit: s3 cp audit.yml ${HUB_METRICS_S3_PATH}
  - name: superset
    variant: apache
    pip_url: apache-superset==1.5.0 markupsafe==2.0.1 snowflake-sqlalchemy
  - name: great_expectations
    variant: great-expectations
    pip_url: great_expectations==0.15.20; sqlalchemy==1.4.40; snowflake-sqlalchemy==1.4.1
    settings:
    # Custom settings
    - name: raw_database
      env: GE_RAW_DATABASE
    - name: prod_database
      env: GE_PROD_DATABASE
    - name: username
      env: GE_USERNAME
    - name: role
      env: GE_ROLE
    - name: warehouse
      env: GE_WAREHOUSE
    commands:
      test_ga_raw: checkpoint run google_analytics_raw
      test_dbt_hub_metrics: checkpoint run dbt_hub_metrics
    config:
      host: epa06486
      password: ${SNOWFLAKE_PASSWORD}
  - name: permifrost
    namespace: permifrost
    pip_url: permifrost==0.14.0
    executable: permifrost
    commands:
      run: run utilities/permifrost/roles.yml
      spec-test: spec-test utilities/permifrost/roles.yml
  - name: kms
    namespace: kms
    pip_url: git+https://github.com/meltano/kms-ext.git
    executable: kms
    commands:
      encrypt: encrypt $KMS_PUBLIC_KEY_PATH --dotenv-path $KMS_DOTENV_PATH --output-path $KMS_SECTRETS_PATH
      decrypt: decrypt $KMS_KEY_ID --input-path $KMS_SECRETS_PATH --output-path $KMS_DOTENV_PATH
